package com.sg.dto.biz.app.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc UpdatePlanEvaBatchSetComReqDto
 * @使用场景
 */
@Data
public class UpdatePlanEvaBatchSetComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 批次设置对象ID
     */
    @NotNull(message = "批次设置对象ID不能为空")
    @ApiModelProperty("批次设置对象ID")
    private String batchSetId;

    /**
     * 批次设置对象类型 BASIC_DIV_MGT:基层分工管理 MID_DIV_MGT:中层分工管理 TOP_EVA_TEMP_MGT:高层评价模板管理
     */
    @ApiModelProperty("批次设置对象类型")
    private String batchSetObjectType;

    /**
     * 当前管理对象类型 TOP:高层 MID:中层 BASIC:基层 UNMANNED_MGT:无人管理
     */
    @ApiModelProperty("当前管理对象类型")
    private String currentManageObjectType;

    /**
     * 管理类型 NORMAL_OPERTION:正常操作流程 ROLLBACK_ADJUST:回退操作流程
     */
    @ApiModelProperty("管理类型")
    private String mgtType;

    /**
     * 管理锁定状态 UNLOCK:未锁定 COMMON_LOCK:普通锁定 AUTO_LOCK:自动锁定 SPEC_LOCK:特权锁定
     */
    @ApiModelProperty("管理锁定状态")
    private String manageLockStatus;

    /**
     * 管理锁定原因
     */
    @ApiModelProperty("管理锁定原因")
    private String reasonOfManageLock;

    /**
     * 使用锁定状态 UNLOCK:未锁定 COMMON_LOCK:普通锁定 AUTO_LOCK:自动锁定 SPEC_LOCK:特权锁定
     */
    @ApiModelProperty("使用锁定状态")
    private String usingLockStatus;

    /**
     * 使用锁定原因
     */
    @ApiModelProperty("使用锁定原因")
    private String reasonOfUsingLock;

    /**
     * 全局锁定状态 UNLOCK:未锁定 COMMON_LOCK:普通锁定 AUTO_LOCK:自动锁定 SPEC_LOCK:特权锁定
     */
    @ApiModelProperty("全局锁定状态")
    private String globalLockStatus;

    /**
     * 是否统一管理 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否统一管理")
    private String isUnifiedMgt;

    /**
     * 设置完成状态 TRUE:是 FALSE:否
     */
    @ApiModelProperty("设置完成状态")
    private String setCompleteStatus;

    /**
     * 评价模板设置是否完成 TRUE:是 FALSE:否
     */
    @ApiModelProperty("评价模板设置是否完成")
    private String evaTempIsComplete;

    /**
     * 主题内容ID
     */
    @ApiModelProperty("主题内容ID")
    private String themeContentId;

}
